Repository navigation
docs(api-reference): daily api-review 2026-10-26 — dashboard application_id, session turn_in_flight - #1132
Merged
Conversation
…ion_id, session turn_in_flight
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Daily
api-reviewaudit (--mode generate --scope all --auto). It picked up two public-surface drifts where the backend onorigin/mainis ahead of the specs, and nothing else.2026-10-23T08:04:06Z→2026-10-26T08:00Z, docs baselinemain3aa5f4f5. Every commit in the window, merge commits included, was diffed against its first parent and filtered against the public surface (auth == "all", not/event/push/, module not hidden).POST /channel/incident/daily-counts(handler still only onfc-eventorigin/dev). So no operation was added or removed —docs.jsonpages,docs.jsonredirects and bothapi-catalog.mdxwere deliberately left untouched, andscripts/api_path_redirects.py --checkstill exits 0.Per-module operation changes
Total: 0 added, 7 updated, 0 removed. Diff is
+132 / −4over 6 files.What changed, and the Go anchor for each
rum —
/rum/dashboard/{create,get,list,update,restore}fc-rumPR #394 (785db1d, merged 2026-10-25) made a dashboard belong to exactly one application:types/dashboard/contract.go—CreateInputgainsApplicationID string \json:"application_id"`,ResourceandListItemgainapplication_id,ListInputgains an optionalapplication_id`.types/dashboard/validate.go—CreateInput.Validaterejects an emptyapplication_idor one longer than 64 bytes (maxApplicationIDBytes = 64), so the create field is required withminLengthimplied by "1 to 64 bytes";ReadsOnlyadditionally requires every query indefinitionto read that same application.Applied:
application_idadded toRumDashboardCreateRequest(required),RumDashboardResource(required),RumDashboardListItem(required) andRumDashboardListRequest(optional), plus the request/200 examples that must carry the newly required key, plus one Usage bullet on create for the same-application rule.safari —
/safari/session/{get,list}fc-safariPR #1634 (ff8f1900, merged 2026-10-25) —types/session.go#SessionItemgainsTurnInFlight bool \json:"turn_in_flight"`with noomitempty, andcmd/api/sessions/sessions.gofills it on both the get (:518) and list (:710`) paths.Applied:
SessionItemgainsturn_in_flight(required, next tois_running) and both response examples carry it.Examples
The dev API is not reachable from this environment (it cannot reference the credential environment variables), so every request and 200 example touched here was constructed from the schema, not captured. Values are coherent across the pair: the RUM application id
qLpu24Dz4CAzWsESPbJYWAalready used by the dashboard definition examples, and the existing UUIDv7 dashboard id. Both language files share the same example values, as required.Verification
python3 -c "import json; json.load(...)"on all 6 files: OK.python3 scripts/lint_openapi.py:OK: 12 spec files, no violations.python3 scripts/api_path_redirects.py --check: exit 0.rumandsafari:nonemissing indocs.jsonand in bothapi-catalog.mdx.required, enums and types; only human text differs (description,tags,x-enumDescriptions).DutyError.reasonhand edit in the consolidated files, carryingx-flashduty-preserve-absence: true— left alone on purpose, recorded here for adjudication.json.dumps(indent=2, ensure_ascii=False)before the edit), so the diff contains no re-sorting.mint broken-linkscould not be run (Mintlify CLI is not installed here); it is not needed either — no page, path or anchor was added or removed.Overlap with open PRs — please read
docs/rum-query-time-alignment) already addsdisable_cachetoRumDataQueryDefinitionand the caching/alignment prose for/rum/data/queryand/rum/facet/count.fc-rum4e883e9does add that field, but it is already covered by that PR, so this PR does not duplicate it. FYI: that branch currently fails the same lint this PR passes — applying its diff tomainyields 8description-too-longviolations (the new prose sits in the operationdescriptioninstead ofx-mint.content). Whoever owns the draft needs to move the text before it can merge.api-reviewPR and is still open. It toucheson-callfiles only; this PR does not touchon-call, so they should merge cleanly in either order.Considered and deliberately not changed
fc-evente7d6fbaedroppedTitlefrom the incident list filter and madelabels/fieldsexact-match;fc-evente4835ebdmade/alert/listmatch a plain title as a substring and caps a title search to 7 days. Both fields areapidoc:"omit"in the handler, and the specs document neither, so no spec change follows from either commit.EscalateRuleItem.channel_name,MetricsBase.account_id,A2AAgentItem.description,PersonItem.*,AlertRule.investigation_targets: present in Go but either never filled on the wire (channel_nameis only ever assigned for other item types), or deliberately excluded (A2AAgentItem.descriptioncarries a comment saying OpenAPI/SDK/CLI no longer expose it), or the docs schema that would carry them is unreferenced legacy next to the live one (AlertRuleV2already documentsinvestigation_targets). No change.fc-safariexpires_at_sec(credits grant) andfc-pgywalletend_timeare onjwt/noneroutes,RunRequest.config_onlyis on the internal run path;config_only/config_targetare notapp_key-callable, so they are out of the public surface.monit-webapiexecution-history storage work (docs(api): document app-key license listing #179) exposes no public endpoint, and theon-call/calendarmapping defect noted in earlier rounds still stands (report only, skill body untouched).Unresolved (not written into any spec)
POST /channel/incident/daily-counts— registry row isAuth: "all", but the handler and route exist only onfc-eventorigin/dev; no path was fabricated for it.